I am nearing the end of my journey to update about 200 Ubuntu Touch apps from Xenial to Focal. All of the apps have been updated that I can update. However, to clarify, that means I have updated them, not that they are released on the open-store yet. You can check out the progress table below, but of the successfully updated apps, about a third of them are pending. That means I have either submitted a pull request and am waiting for the developer to accept (or not), or if their repository didn't work that way, then I contacted them via email or messaging service of their choice and am now waiting for a response.
One of the tools I have been using a lot of is sed. Coupled with find, it is a powerful tool to fix so many things all at once. I mentioned before how I update the Ubuntu imports to Lomiri with this command:
$ find . -type f -name '*.qml' -exec sed -i 's/Ubuntu/Lomiri/g' {} \; -ls
Which so far had worked fairly well for me. Another great use for sed is when I have been told to fork my own update for the app, or when the original developer has not responded to my communications after a week, then I use this one liner to convert the app to my own name space:
find . -type f -name '*' -exec sed -i 's/de.djfun.akari/akari.alaskalinuxuser/g' {} \; -ls
In the example command above, I converted the akari app to my name space so I can upload it on the open-store. This saves me from reading through all the qml, json, yaml, cpp, and cmake files to find where the app is named and converts it to my name in seconds. This is a task which by hand took me several minutes to even longer if the name was hidden somewhere in the app. It is necessary so I can put the app in the open-store, or it error saying that app already exists, pointing to the outdated one. Of course, I still leave the about information for the original developer, but usually add myself beneath them as the maintainer.
Honestly, with scripting, find, and sed, you can update apps really quickly, provided that there are no other issues like dependencies and libraries. Either way, there are now more apps on the open-store! If you want to follow along with my journey, here is a little table of my progress:
Apps | Numbers |
---|---|
Released on Open-Store | 59 |
Pending release | 24 |
Cannot Update | 115 |
Remaining | 0 |
Total | 199 |
Percentage complete | 100% |
Percentage Success | 41.9% |
Percentage Failed | 58.1% |
Linux - keep it simple.